package com.itheima.mapper;

import com.itheima.jopo.Emp;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * EmpDao
 *
 * @author liliudong
 * @version 1.0
 * @description
 * @date 2023/4/25 16:46
 */
@Mapper
public interface EmpMapper {
    /**
     * 根据username查询员工数量
     *
     * @param username 员工username
     * @return 数量
     */
    Integer selectCountByUsername(@Param("username") String username);

    /**
     * 新增一条员工信息
     *
     * @param emp emp
     */
    void insertOne(@Param("emp") Emp emp);

    /**
     * 根据ID删除
     *
     * @param id id
     */
    void deleteById(@Param("id") String id);

    /**
     * 根据ID查询数量
     *
     * @param id id
     * @return
     */
    Integer selectCountById(@Param("id") Integer id);

    /**
     * 根据Id更新
     *
     * @param emp
     */
    void updateById(@Param("emp") Emp emp);

    /**
     * 查询所有员工信息
     *
     * @return List<Emp>
     */
    List<Emp> selectList();

    /**
     * 根据ID查询员工信息
     *
     * @param id id
     * @return Emp
     */
    Emp selectById(@Param("id") String id);
}
